#include"process.h"
#include<unistd.h>
#include<stdio.h>
#include<stdlib.h>
typedef void (*call_t)(const char*,double,double);
double total=1024.0;
double speed[]={1.0,0.5,0.3,0.02,0.1,0.01};
void download(int total, call_t cb)
{
	srand(time(NULL));
	double current=0.0;
	while(current<=total)
	{
		cb("下载中",total,current);
		if(current>=total)break;
		//下载代码
		int random=rand()%6;
		usleep(5000);
		current+=speed[random];
		if(current>=total) current=total;
	}
}
int main()
{
       
download(1024.0, FlushProcess);
    printf("download 1024.0MB done\n");
    download(512.0, FlushProcess);
    printf("download 512.0MB done\n");
    download(256.0,FlushProcess);
    printf("download 256.0MB done\n");
    download(128.0,FlushProcess);
    printf("download 128.0MB done\n");
    download(64.0,FlushProcess);
    printf("download 64.0MB done\n");
    
    return 0;

}

